

#ifndef UC_GEDXFIO_H
#define UC_GEDXFIO_H

#include "zdbfiler.h"
#include "zgefileio.h"
#include "zgelibver.h"
#pragma pack (push, 8)

class
GE_DLLEXPIMPORT
UcGeDxfIO
{
public:

    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePoint2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeVector2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeMatrix2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeScale2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePoint2dArray&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeVector2dArray&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePoint3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeVector3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeMatrix3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeScale3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePoint3dArray&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeVector3dArray&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeTol&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeInterval&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeKnotVector&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeDoubleArray&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeIntArray&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCurveBoundary&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePosition2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePointOnCurve2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeLine2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeLineSeg2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeRay2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCircArc2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeEllipArc2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeExternalCurve2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCubicSplineCurve2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeNurbCurve2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCompositeCurve2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeOffsetCurve2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePolyline2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePosition3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePointOnCurve3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePointOnSurface&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeLine3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeRay3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeLineSeg3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePlane&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeBoundedPlane&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCircArc3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeEllipArc3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCubicSplineCurve3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeNurbCurve3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCompositeCurve3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeOffsetCurve3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGePolyline3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeAugPolyline3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeExternalCurve3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCone&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCylinder&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeTorus&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeExternalSurface&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeOffsetSurface&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeNurbSurface&);
    static
   Ucad::ErrorStatus outFields(UcDbDxfFiler*,const UcGeExternalBoundedSurface&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeSphere&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeBoundBlock2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeBoundBlock3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCurveCurveInt2d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeCurveCurveInt3d&);
    static
    Ucad::ErrorStatus outFields(UcDbDxfFiler*, const UcGeEllipCone&);

    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePoint2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeVector2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeMatrix2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeScale2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePoint2dArray&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeVector2dArray&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePoint3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeVector3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeMatrix3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeScale3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePoint3dArray&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeVector3dArray&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeTol&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeInterval&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeKnotVector&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeDoubleArray&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeIntArray&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCurveBoundary&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePosition2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePointOnCurve2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeLine2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeLineSeg2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeRay2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCircArc2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeEllipArc2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeExternalCurve2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCubicSplineCurve2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeNurbCurve2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCompositeCurve2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeOffsetCurve2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePolyline2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePosition3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePointOnCurve3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePointOnSurface&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeLine3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeRay3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeLineSeg3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePlane&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeBoundedPlane&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCircArc3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeEllipArc3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCubicSplineCurve3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeNurbCurve3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCompositeCurve3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeOffsetCurve3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGePolyline3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeAugPolyline3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeExternalCurve3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCone&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCylinder&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeTorus&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeExternalSurface&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeOffsetSurface&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeNurbSurface&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeExternalBoundedSurface&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeSphere&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeBoundBlock2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeBoundBlock3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCurveCurveInt2d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeCurveCurveInt3d&);
    static
    Ucad::ErrorStatus inFields(UcDbDxfFiler*, UcGeEllipCone&);

    static const UcGeLibVersion  UcGeDxfIOVersion;
};

#pragma pack (pop)
#endif
